#include <stdio.h>
//练习1定义两个整形变量，分别用指针表示，并用指针标志他们的值。
/*int main() {
    int s=0;
    int a=8;
    int * p_a=&a;
    int b=9;
    int *p_b=&b;
    s=*p_a+*p_b;
    int * p_s=&s;
    
    printf("p_a的地址为:%p,\np_b的地址为:%p,\n他们的合为%d\n他们的合的地址为%p",p_a,p_b,s,p_s);
}*/
//练习2。将两个变量的值交换。
//1).借助第三方
//int a.int b;
//int t;
//t=a;
//a=b;
//b=t;
//2).不借助第三方
//a=a+b;
//b=a-b;
//a=a-b;
//3).使用指针交换
//t=*pa;
//*pa=*pb
//*pb=t;
/*void swap(int *num1,int *num2){
    int t=0;
    t=*num1;
    *num1=*num2;
    *num2=t;



}
int main(){

    int a=1,b=9,c=7,d=8;
    swap(&a, &b);
    swap(&c, &d);
    printf("%d,%d,%d,%d",a,b,c,d);


}*/
//使用函数将3个整数由大到小打印输出。
void sort(int* a,int* b,int* c){
    int t=0;
    if(*a<*b){
        t=*a;
        *a=*b;
        *b=t;
    }
    if(*a<*c){
        t=*a;
        *a=*c;
        *c=t;
    }
    if(*b<*c){
        t=*b;
        *b=*c;
        *c=t;
    }
    


}
int main (){
    int a=25,b=49,c=19;
    sort(&a,&b,&c);
    printf("%d  %d  %d\n",a,b,c);

}
